feat(docs): snapshot v1.14.0 Omnigraph examples#2177
Conversation
Cut the per-version Omnigraph example snapshot for v1.14.0 (examples, schema, responses) under docs/.../versions/v1.14.0. Responses fetched from the staged v2 Sepolia blue deployment, since prod still serves the 1.13.1 schema. ACTIVE_OMNIGRAPH_VERSION stays v1.13.1 until v1.14.0 is promoted to prod. Also: - fix the SepoliaV2 domain-resolver example: SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER now points to demomigration.eth (records/permissions/events) instead of sfmonicdebmig.eth, which had no owned resolver (rendered assigned: null). - add an OMNIGRAPH_ENDPOINT override to the response-fetch script so responses can be filled from a staged endpoint before promotion. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
🦋 Changeset detectedLatest commit: 0de0c62 The changes in this PR will be included in the next version bump. This PR includes changesets to release 22 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 WalkthroughWalkthroughThis PR adds a v1.14.1 Omnigraph example snapshot for the ENSNode SDK, introducing a complete GraphQL schema defining account/domain/registry/registration/resolver/permissions entities, alongside new example queries demonstrating ENSv1 → ENSv2 migrations, with supporting metadata updates and infrastructure improvements. Changesv1.14.1 Omnigraph Schema and Examples
🎯 3 (Moderate) | ⏱️ ~22 minutes Possibly Related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
ESLint skipped: no ESLint configuration detected in root package.json. To enable, add Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
Adds the Omnigraph examples + schema snapshot for v1.14.0 so the docs site can render version-locked example queries/responses against the 1.14.0 schema, while keeping ACTIVE_OMNIGRAPH_VERSION pinned to v1.13.1.
Changes:
- Cut a new docs snapshot under
docs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.0/(schema, examples, responses, snapshot metadata). - Update the SDK’s Sepolia v2 “domain-resolver” example constant to use
demomigration.eth(owned resolver present). - Add an
OMNIGRAPH_ENDPOINTenv override to the docs response-fetching script to support staged (blue/green) endpoints.
Reviewed changes
Copilot reviewed 6 out of 7 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| packages/ensnode-sdk/src/omnigraph-api/example-queries.ts | Switches the Sepolia v2 “owned resolver” example name to demomigration.eth for non-null resolver data. |
| docs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.0/snapshot.json | Adds v1.14.0 snapshot metadata (version, commit, schema tag, endpoint, date). |
| docs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.0/schema.graphql | Adds the v1.14.0 Omnigraph GraphQL SDL snapshot used for validation/rendering. |
| docs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.0/responses.json | Adds the v1.14.0 example response snapshot payloads. |
| docs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.0/examples.json | Adds the v1.14.0 example query + variables snapshot. |
| docs/ensnode.io/scripts/fetch-omnigraph-example-responses.mts | Allows overriding the base URL via OMNIGRAPH_ENDPOINT when fetching responses. |
| .changeset/omnigraph-domain-resolver-example.md | Records the SDK patch change for the domain-resolver example name update. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Greptile SummaryCuts the v1.14.0 Omnigraph example snapshot (schema, examples, responses) and fixes the
Confidence Score: 5/5Safe to merge; changes are additive data snapshots and a bug fix in example test data, with a small tooling improvement to the fetch script. The snapshot files are auto-generated, the domain-resolver fix is straightforward and verified by 12 live responses, and the three new migration examples follow the same pattern as existing ones. The only code-path change is the OMNIGRAPH_ENDPOINT URL construction in a developer-only script, which is functionally correct for origin-only endpoint URLs. No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[pnpm omnigraph-examples:refresh-responses] --> B{OMNIGRAPH_VERSION env?}
B -- set --> C[Use custom version dir]
B -- unset --> D[Use ACTIVE_OMNIGRAPH_VERSION v1.13.1]
C --> E[Load versions/vX.Y.Z/examples.json]
D --> E
E --> F{OMNIGRAPH_ENDPOINT env?}
F -- set --> G[Override endpoint URL]
F -- unset --> H[Use ENSNODE_URL]
G --> I[new URL /api/omnigraph, endpoint]
H --> I
I --> J[POST GraphQL queries]
J --> K[Write versions/vX.Y.Z/responses.json]
Reviews (4): Last reviewed commit: "fix(docs): retag snapshot v1.14.1, drop ..." | Re-trigger Greptile |
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add three migration-focused examples to the v1.14.0 snapshot:
- account-migrated-names: ENSv1 vs ENSv2 domain counts for an account
- batch-migration-check: canonical ENSv2 identity for a batch of names
- eth-by-version: the .eth TLD's Domain id in each protocol version
These use 1.14-only schema (top-level `domains(where: { version })`), so
they render only once v1.14.0 is the active version. Responses fetched
from the staged v2 Sepolia blue deployment.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…xample
- rename the version snapshot v1.14.0 -> v1.14.1 (the version this ships as
after the patch changeset; what prod will serve once blue is promoted)
- remove the batch-migration-check example: the version-agnostic name.in
query conflated v1/v2 records
- simplify eth-by-version to domains(where: { name: { eq: "eth" } }) +
__typename, returning one ENSv1Domain and one ENSv2Domain
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
@greptile review |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.changeset/omnigraph-domain-resolver-example.md:
- Around line 5-7: The changeset description is split into two paragraphs;
combine them into a single terse paragraph so the body remains one-line per repo
convention, e.g., merge the sentences about adding two ENSv1 → ENSv2 migration
Omnigraph examples (`account-migrated-names`, `eth-by-version`) and the fix to
the `domain-resolver` example (update `SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER` to
`demomigration.eth` instead of `sfmonicdebmig.eth`) into one continuous
paragraph without extra line breaks.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 43cb93a2-4bfb-4a6b-acb7-407bc050f028
📒 Files selected for processing (9)
.changeset/omnigraph-domain-resolver-example.mddocs/ensnode.io/scripts/fetch-omnigraph-example-responses.mtsdocs/ensnode.io/src/data/omnigraph-examples/meta.tsdocs/ensnode.io/src/data/omnigraph-examples/versions/v1.13.1/snapshot.jsondocs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.1/examples.jsondocs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.1/responses.jsondocs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.1/schema.graphqldocs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.1/snapshot.jsonpackages/ensnode-sdk/src/omnigraph-api/example-queries.ts
| add two ENSv1 → ENSv2 migration Omnigraph examples: `account-migrated-names` (ENSv1 vs ENSv2 domain counts for an account) and `eth-by-version` (the .eth TLD across protocol versions, one Domain per version discriminated by `__typename`). | ||
|
|
||
| also fix the `domain-resolver` example: `SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER` now points to `demomigration.eth`, which has an owned resolver with records/permissions/events. The previous name (`sfmonicdebmig.eth`) had no owned resolver, so the example rendered `resolver.assigned: null`. |
There was a problem hiding this comment.
🧹 Nitpick | 🔵 Trivial | ⚡ Quick win
Keep the changeset body as a single paragraph.
The description is currently split into two paragraphs; please keep it as one terse paragraph to match repo convention.
♻️ Proposed edit
-add two ENSv1 → ENSv2 migration Omnigraph examples: `account-migrated-names` (ENSv1 vs ENSv2 domain counts for an account) and `eth-by-version` (the .eth TLD across protocol versions, one Domain per version discriminated by `__typename`).
-
-also fix the `domain-resolver` example: `SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER` now points to `demomigration.eth`, which has an owned resolver with records/permissions/events. The previous name (`sfmonicdebmig.eth`) had no owned resolver, so the example rendered `resolver.assigned: null`.
+add two ENSv1 → ENSv2 migration Omnigraph examples: `account-migrated-names` (ENSv1 vs ENSv2 domain counts for an account) and `eth-by-version` (the .eth TLD across protocol versions, one Domain per version discriminated by `__typename`), and fix the `domain-resolver` example: `SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER` now points to `demomigration.eth`, which has an owned resolver with records/permissions/events; the previous name (`sfmonicdebmig.eth`) had no owned resolver, so the example rendered `resolver.assigned: null`.Based on learnings: In this repository’s .changeset markdown files, keep the changeset description as a terse, single-paragraph write-up.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| add two ENSv1 → ENSv2 migration Omnigraph examples: `account-migrated-names` (ENSv1 vs ENSv2 domain counts for an account) and `eth-by-version` (the .eth TLD across protocol versions, one Domain per version discriminated by `__typename`). | |
| also fix the `domain-resolver` example: `SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER` now points to `demomigration.eth`, which has an owned resolver with records/permissions/events. The previous name (`sfmonicdebmig.eth`) had no owned resolver, so the example rendered `resolver.assigned: null`. | |
| add two ENSv1 → ENSv2 migration Omnigraph examples: `account-migrated-names` (ENSv1 vs ENSv2 domain counts for an account) and `eth-by-version` (the .eth TLD across protocol versions, one Domain per version discriminated by `__typename`), and fix the `domain-resolver` example: `SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER` now points to `demomigration.eth`, which has an owned resolver with records/permissions/events; the previous name (`sfmonicdebmig.eth`) had no owned resolver, so the example rendered `resolver.assigned: null`. |
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)
[warning] 5-5: First line in a file should be a top-level heading
(MD041, first-line-heading, first-line-h1)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.changeset/omnigraph-domain-resolver-example.md around lines 5 - 7, The
changeset description is split into two paragraphs; combine them into a single
terse paragraph so the body remains one-line per repo convention, e.g., merge
the sentences about adding two ENSv1 → ENSv2 migration Omnigraph examples
(`account-migrated-names`, `eth-by-version`) and the fix to the
`domain-resolver` example (update `SEPOLIA_V2_NAME_WITH_OWNED_RESOLVER` to
`demomigration.eth` instead of `sfmonicdebmig.eth`) into one continuous
paragraph without extra line breaks.
Cuts the per-version Omnigraph example snapshot for v1.14.0 so the docs can render version-locked example queries + responses against the 1.14.0 schema.
what's here
docs/ensnode.io/src/data/omnigraph-examples/versions/v1.14.0/(schema.graphql,examples.json,snapshot.json,responses.json)api.v2-sepolia.blue.ensnode.io), since prod still serves the 1.13.1 schema (resolver.assigneddoesn't exist there yet). all 12 rendered examples return real data.ACTIVE_OMNIGRAPH_VERSIONis unchanged (v1.13.1). the docs render the active version's queries against the prodconnectionURL; bumping active now would break the live "try it"/curl links until 1.14.0 is promoted to prod. that bump is the separate one-line PR per the existing workflow.domain-resolver example fix
SEPOLIA_V2_NAME_WITH_OWNED_RESOLVERpointed atsfmonicdebmig.eth, which has no owned resolver on the indexed instance — the example renderedresolver.assigned: null. switched it todemomigration.eth(7 records / 1 permission / 12 events), matching the constant's documented intent.tooling
added an
OMNIGRAPH_ENDPOINTenv override tofetch-omnigraph-example-responses.mts(mirrors the existingOMNIGRAPH_VERSIONenv) so responses can be filled from a staged blue/green endpoint before it's promoted to the prod URL.validation
@ensnode/ensnode-sdktypecheck ✓versions.test.ts(30 tests) ✓pnpm lint✓🤖 Generated with Claude Code